I. Field of the Invention
The present invention relates to the use of feature codes in telephony. More particularly, the invention concerns a method of generating, exchanging, and interpreting feature codes that are compressed by re-mapping their contents.
II. Description of the Related Art
A typical wireless telecommunications network includes a large number of remote switching centers, spread across a broad geographic area. Whenever a remote subscriber places a call, a nearby remote switching center receives the wireless signal for processing. As a remote subscriber moves between different geographic locations, different remote switching centers may receive the wireless signal and process the subscriber's call.
As a matter of convenience to remote subscribers, many wireless telecommunications companies permit remote subscribers to dial a telephone number using a special dialing string or “SDS”. A simplified dialog string is a shortened or abbreviated dialing string, often beginning with a symbol such as the star key (*) or pound key (#) and typically containing three digits (e.g., *123). When a remote subscriber dials a simplified dialing string, a remote switching center receives the simplified dialing string and then translates the received simplified dialing string into a number to be dialed (e.g., *123 may be translated to 555-1234).
Similarly, many wireless telecommunications companies also support the use of remote feature codes (“feature codes”). A feature code is similar to a simplified dialing string, but is used as an instruction to control service features from a remote subscriber's handset. A non-exhaustive list of such features includes Call Forwarding, Call Waiting, Calling Number Identification, Automatic Callback, Conference Calling, Message Waiting Notification, Call Encryption, Selective Call Acceptance, Voice Mail, Enhanced Vocoder, and Cost of Call Notification. Activation or deactivation of such features typically involves the completion of a sequence of keystrokes on the keypad for selecting or de-selecting the desired feature. In many cases, the keystrokes involve the entry of a numeric sequence preceded by the star key (*) and/or followed by the pound key (#). An exemplary feature code, for example, might be*66#. Sometimes, feature codes are invoked by the user's selection of a dedicated menu by pressing a “Menu” key followed by a one- or two-digit number, one or more soft keys, or by scrolling the menu screen. Even when a remote unit has menu capability, the feature code value specific to the home network is commonly a numeric sequence as above, with selection of the “Menu” key being sent as a star key to indicate a feature code. In this case, the feature code value is programmed upon activation of the feature to correspond to a particular menu location, and the actual feature code value is unknown to the user.
In a typical wireless telecommunications system, translation of simplified dialing strings and feature codes occurs within the remote switching center processing the remote subscriber's call. Thus, for example, when a remote subscriber in one geographic location dials *123, a remote switching center in that same location performs the required translation. In contrast, when the same remote subscriber is in a different geographic location and dials the same string/code (e.g., *123), a different remote switching center will likely process the call.
Because each remote switching center independently translates strings/codes into dialed numbers, it is possible that the same strings/codes will be translated into a different number to be dialed depending upon which remote switching center performs the translation. For example, if a subscriber in one geographic location, such as Texas, dials *123, the Dallas remote switching center may translate the call to dialed number 458-1440. Whereas, if a remote subscriber in another geographic location, such as Washington, D.C., the Washington D.C. remote switching center may translate the call to a different dial number such as 555-1212. For the same reason, it is also possible that different remote switching centers will activate/de-activate different service features in response to the same feature code processed by the different remote switching centers.
The use of feature codes have been developed and expanded in a variety of different implementations. Some examples appear in the following references:    1. U.S. Pat. No. 6,122,501 dated Sep. 19, 2000, entitled “System and Method for Flexible Translation of Wireless Special Dialing Strings and Remote Feature Codes.”    2. U.S. Pat. No. 6,141,545 dated Oct. 31, 2000, entitled “Method and System for Remote Call Forwarding of Telephone Calls from Cellular Phone.”    3. U.S. Pat. No. 6,029,065, dated Feb. 22, 2000, for “Remote Feature Code Programming for Remote Stations.”    4. U.S. Pat. No. 5,913,165, dated Jun. 15, 1999, for “Method for Changing Subscriber Service Features in a Radio Telecommunications Network.”
A different use of feature codes has been the recruitment of existing cellular telephone networks to transmit encoded data related to telemetry tracking, surveillance, data transmission, identification, and remote monitoring. One such application involves the exchange of automated status messages between cargo trucks and a central monitoring facility by equipping the cargo trucks with cellular telephone equipment, and transmitting the messages via “feature codes.” To avoid the varying significance of feature codes from one cellular service provider to another, remote switching centers typically return calls with feature codes to the subscriber's home service area, which can implement the feature code as intended by the subscriber. Thus, by equipping a cargo truck's cellular telephone with a Mobile Identification Number (MIN) that indicates that the telephone's home service provider is the central cargo monitoring facility, and programming the remote switching centers to forward all feature codes from phones belonging to that home service provider to the central cargo monitoring facility, the existing cellular network is recruited to direct messages from field equipment to the central monitoring site. One reference that addresses this subject is U.S. Pat. No. 6,144,859 dated Nov. 7, 2000, for “Wireless Cellular Communicator System and Apparatus.”
Although these systems constitute a significant advance and enjoy substantial commercial success today, engineers at Qualcomm Incorporated continually endeavor to improve the performance and efficiency of such remote communications systems. With Qualcomm's OmniTRACS® product line, for example, Qualcomm engineers are interested in increasing the speed and efficiency of data flow between remote cargo units and the central monitoring facility.